package dashboard

import (
	"gitee.com/g-qs/gin-vue-admin/server/model/user"
	"time"
)

// DailyNewUsers 当日新增用户返回结构体
type DailyNewUsers struct {
	Date []string `json:"date"`
	Num  []uint   `json:"num"`
}

// SexAndAgeRatio 性别年龄占比返回结构体
type SexAndAgeRatio struct {
	SexPie []Ratio `json:"sex_ratio"`
	AgePie []Ratio `json:"age_ratio"`
}

type Ratio struct {
	Name  string `json:"name"`
	Value int64  `json:"value"`
}

// DiseaseTOP 病症TOP返回结构体
type DiseaseTOP struct {
	BzID  string `json:"bz_id"`
	Name  string `json:"name"`
	Count int    `json:"count"`
}

// DiseaseUserList 病症用户列表返回结构体
type DiseaseUserList struct {
	UID   uint   `json:"uid"`
	Name  string `json:"name"`
	Phone string `json:"phone"`
}

// PlanCompleteInfo 方案进度信息结构体
type PlanCompleteInfo struct {
	FinishNum    int            `json:"finish_num"`
	NoFinishNum  int            `json:"no_finish_num"`
	CompleteInfo []CompleteInfo `json:"plan_schedule_info"`
}

type CompleteInfo struct {
	ID       uint   `json:"id" form:"id"`
	Name     string `json:"name"  form:"name"`
	Phone    string `json:"phone" form:"phone"`
	Schedule string `json:"schedule"`
}

type HealthRecords struct {
	Name               string             `json:"name"`
	Sex                string             `json:"sex"`
	Birthday           time.Time          `json:"birthday"`
	Physique           string             `json:"physique"`
	BloodType          string             `json:"blood_type"`
	BloodSugar         string             `json:"blood_sugar"`
	BloodOxygen        string             `json:"blood_oxygen"`
	HeartRate          string             `json:"heart_rate"`
	LowPressure        string             `json:"low_pressure"`
	HighPressure       string             `json:"high_pressure"`
	Diseases           []Disease          `json:"diseases"`
	Posture            []Posture          `json:"posture"`
	NowMedicalHistory  NowMedicalHistory  `json:"now_medical_history"`
	PastMedicalHistory PastMedicalHistory `json:"past_medical_history"`
}

type Disease struct {
	Disease string `json:"disease"`
}

type Posture struct {
	Position string           `json:"position"`
	Symptom  []PostureSymptom `json:"symptom"`
}

type PostureSymptom struct {
	Id   uint   `json:"id"`
	Name string `json:"name"`
}

type NowMedicalHistory struct {
	NowSymptom   string `json:"now_symptom"`
	NowMeasure   string `json:"now_measure"`
	NowSituation string `json:"now_situation"`
}

type PastMedicalHistory struct {
	PastSymptom   string `json:"past_symptom"`
	PastMeasure   string `json:"past_measure"`
	PastSituation string `json:"past_situation"`
}

type PromotionRoster struct {
	Name         string      `json:"name"`
	PromotionNum int         `json:"promotion_num"`
	Score        uint        `json:"score"`
	Province     uint        `json:"province"`
	City         uint        `json:"city"`
	Area         uint        `json:"area"`
	Addr         string      `json:"addr"`
	Promotions   []user.User `json:"promotion_list"`
}
